{-# OPTIONS -Wall #-}

--------------------------------------------------------------------------------
-- |
-- Module      :  Majalan.Pitch.Centaur.PitchNames
-- Copyright   :  (c) Stephen Tetley 2014
-- License     :  BSD3
--
-- Maintainer  :  stephen.tetley@gmail.com
-- Stability   :  unstable
-- Portability :  GHC
--
-- Named pitches (Centaur tuning)
--
--------------------------------------------------------------------------------

module Majalan.Pitch.Centaur.PitchNames
  ( 

  -- * Pitch constructors
    c_1, cs_1, d_1, ds_1, e_1
  , f_1, fs_1, g_1, gs_1, a_1, as_1, b_1

  , c_2, cs_2, d_2, ds_2, e_2 
  , f_2, fs_2, g_2, gs_2, a_2, as_2, b_2

  , c_3, cs_3, d_3, ds_3, e_3 
  , f_3, fs_3, g_3, gs_3, a_3, as_3, b_3

  , c_4, cs_4, d_4, ds_4, e_4 
  , f_4, fs_4, g_4, gs_4, a_4, as_4, b_4

  , c_5, cs_5, d_5, ds_5, e_5 
  , f_5, fs_5, g_5, gs_5, a_5, as_5, b_5

  , c_6, cs_6, d_6, ds_6, e_6 
  , f_6, fs_6, g_6, gs_6, a_6, as_6, b_6

  , c_7, cs_7, d_7, ds_7, e_7 
  , f_7, fs_7, g_7, gs_7, a_7, as_7, b_7

  , c_8, cs_8, d_8, ds_8, e_8 
  , f_8, fs_8, g_8, gs_8, a_8, as_8, b_8


  ) where

import Majalan.Pitch.Centaur.Base

import Data.AffineSpace                         -- package: vector-space


--------------------------------------------------------------------------------
-- Pitches


sharpen :: Centaur -> Centaur
sharpen p = p .+^ 1

makeC           :: Int -> Centaur
makeC ove       = makeCentaur ove 0 

makeD           :: Int -> Centaur
makeD ove       = makeCentaur ove 2

makeE            :: Int -> Centaur
makeE ove       = makeCentaur ove 4

makeF           :: Int -> Centaur
makeF ove       = makeCentaur ove 5

makeG           :: Int -> Centaur
makeG ove       = makeCentaur ove 7

makeA           :: Int -> Centaur
makeA ove       = makeCentaur ove 9

makeB           :: Int -> Centaur
makeB ove       = makeCentaur ove 11




 



-- Octave 5

c_1             :: Centaur
c_1             = makeC 5 

cs_1            :: Centaur
cs_1            = sharpen $ makeC 5

d_1             :: Centaur
d_1             = makeD 5

ds_1            :: Centaur
ds_1            = sharpen $ makeD 5 

e_1             :: Centaur
e_1             = makeE 5

f_1             :: Centaur
f_1             = makeF 5

fs_1            :: Centaur
fs_1            = sharpen $ makeF 5

g_1             :: Centaur
g_1             = makeG 5

gs_1            :: Centaur
gs_1            = sharpen $ makeG 5

a_1             :: Centaur
a_1             = makeA 5

as_1            :: Centaur
as_1            = sharpen $ makeA 5

b_1             :: Centaur
b_1             = makeB 5


-- Octave 6

c_2             :: Centaur
c_2             = makeC 6

cs_2            :: Centaur
cs_2            = sharpen $ makeC 6

d_2             :: Centaur
d_2             = makeD 6

ds_2            :: Centaur
ds_2            = sharpen $ makeD 6

e_2             :: Centaur
e_2             = makeE 6

f_2             :: Centaur
f_2             = makeF 6

fs_2            :: Centaur
fs_2            = sharpen $ makeF 6

g_2             :: Centaur
g_2             = makeG 6

gs_2            :: Centaur
gs_2            = sharpen $ makeG 6

a_2             :: Centaur
a_2             = makeA 6

as_2            :: Centaur
as_2            = sharpen $ makeA 6

b_2             :: Centaur
b_2             = makeB 6



-- Octave 7

c_3             :: Centaur
c_3             = makeC 7

cs_3            :: Centaur
cs_3            = sharpen $ makeC 7

d_3             :: Centaur
d_3             = makeD 7

ds_3            :: Centaur
ds_3            = sharpen $ makeD 7

e_3             :: Centaur
e_3             = makeE 7

f_3             :: Centaur
f_3             = makeF 7

fs_3            :: Centaur
fs_3            = sharpen $ makeF 7

g_3             :: Centaur
g_3             = makeG 7

gs_3            :: Centaur
gs_3            = sharpen $ makeG 7

a_3             :: Centaur
a_3             = makeA 7

as_3            :: Centaur
as_3            = sharpen $ makeA 7

b_3             :: Centaur
b_3             = makeB 7


-- Octave 8

c_4             :: Centaur
c_4             = makeC 8

cs_4            :: Centaur
cs_4            = sharpen $ makeC 8

d_4             :: Centaur
d_4             = makeD 8

ds_4            :: Centaur
ds_4            = sharpen $ makeD 8

e_4             :: Centaur
e_4             = makeE 8

f_4             :: Centaur
f_4             = makeF 8

fs_4            :: Centaur
fs_4            = sharpen $ makeF 8

g_4             :: Centaur
g_4             = makeG 8

gs_4            :: Centaur
gs_4            = sharpen $ makeG 8

a_4             :: Centaur
a_4             = makeA 8

as_4            :: Centaur
as_4            = sharpen $ makeA 8

b_4             :: Centaur
b_4             = makeB 8


-- Octave 9

c_5             :: Centaur
c_5             = makeC 9

cs_5            :: Centaur
cs_5            = sharpen $ makeC 9

d_5             :: Centaur
d_5             = makeD 9

ds_5            :: Centaur
ds_5            = sharpen $ makeD 9

e_5             :: Centaur
e_5             = makeE 9

f_5             :: Centaur
f_5             = makeF 9

fs_5            :: Centaur
fs_5            = sharpen $ makeF 9

g_5             :: Centaur
g_5             = makeG 9

gs_5            :: Centaur
gs_5            = sharpen $ makeG 9

a_5             :: Centaur
a_5             = makeA 9

as_5            :: Centaur
as_5            = sharpen $ makeA 9

b_5             :: Centaur
b_5             = makeB 9


-- Octave 10

c_6             :: Centaur
c_6             = makeC 10

cs_6            :: Centaur
cs_6            = sharpen $ makeC 10

d_6             :: Centaur
d_6             = makeD 10

ds_6            :: Centaur
ds_6            = sharpen $ makeD 10

e_6             :: Centaur
e_6             = makeE 10

f_6             :: Centaur
f_6             = makeF 10

fs_6            :: Centaur
fs_6            = sharpen $ makeF 10

g_6             :: Centaur
g_6             = makeG 10

gs_6            :: Centaur
gs_6            = sharpen $ makeG 10

a_6             :: Centaur
a_6             = makeA 10

as_6            :: Centaur
as_6            = sharpen $ makeA 10

b_6             :: Centaur
b_6             = makeB 10



-- Octave 11

c_7             :: Centaur
c_7             = makeC 11

cs_7            :: Centaur
cs_7            = sharpen $ makeC 11

d_7             :: Centaur
d_7             = makeD 11

ds_7            :: Centaur
ds_7            = sharpen $ makeD 11

e_7             :: Centaur
e_7             = makeE 11

f_7             :: Centaur
f_7             = makeF 11

fs_7            :: Centaur
fs_7            = sharpen $ makeF 11

g_7             :: Centaur
g_7             = makeG 11

gs_7            :: Centaur
gs_7            = sharpen $ makeG 11

a_7             :: Centaur
a_7             = makeA 11

as_7            :: Centaur
as_7            = sharpen $ makeA 11

b_7             :: Centaur
b_7             = makeB 11


-- Octave 12

c_8             :: Centaur
c_8             = makeC 12

cs_8            :: Centaur
cs_8            = sharpen $ makeC 12

d_8             :: Centaur
d_8             = makeD 12

ds_8            :: Centaur
ds_8            = sharpen $ makeD 12

e_8             :: Centaur
e_8             = makeE 12

f_8             :: Centaur
f_8             = makeF 12

fs_8            :: Centaur
fs_8            = sharpen $ makeF 12

g_8             :: Centaur
g_8             = makeG 12

gs_8            :: Centaur
gs_8            = sharpen $ makeG 12

a_8             :: Centaur
a_8             = makeA 12

as_8            :: Centaur
as_8            = sharpen $ makeA 12

b_8             :: Centaur
b_8             = makeB 12






